1. Field of the Invention
The present invention relates generally to an HSDPA (High-Speed Downlink Packet Access) communication system, and in particular, to a method for allocating HARQ (Hybrid Automatic Retransmission Request) channel identifiers using an n-channel SAW HARQ technique.
2. Description of the Related Art
In general, HSDPA (High-Speed Downlink Packet Access) refers to a technique for transmitting data including control channels related to a high-speed downlink shared channel (HS-DSCH) for supporting high-speed packet transmission in an UMTS (Universal Mobile Telecommunications System) communication system which has been developed centering on Europe. In order to support the HSDPA, AMC (Adaptive Modulation and Coding), HARQ (Hybrid Automatic Retransmission Request), and FCS (Fast Cell Select) have been proposed. With reference to FIG. 1, the AMC, the HARQ and the FCS will be described herein below in conjunction with the UMTS communication system.
FIG. 1 schematically illustrates a structure of a general UMTS communication system. Referring to FIG. 1, the UMTS communication system includes a core network (CN) 100, a plurality of radio network subsystems (RNSs) 110 and 120, and a user equipment (UE) 130. The RNSs 110 and 120 each include a radio network controller (RNC) (111, 121) and a plurality of Node Bs, also known as “cells.” For example, the RNC 110 includes an RNC 111 and a plurality of Node Bs 113, 115 and 123, 125. The RNC is classified into a Serving RNC (SRNC), a Drift RNC (DRNC) and a Controlling RNC (CRNC) according to its role. The SRNC and the DRNC are classified according to their roles for each UE, and an RNC managing information on the UE and controlling data exchange with a core network becomes an SRNC of the UE. When data from a UE is transmitted to the SRNC via another RNC except an SRNC, the corresponding RNC becomes a DRNC of the UE. The CRNC represents an RNC controlling each Node B. For example, in FIG. 1, if information on the UE 130 is managed by the RNC 111, the RNC 111 becomes an SRNC. If data from the UE 130 is transmitted through the RNC 121 due to a movement of the UE 130, then the RNC 121 becomes a DRNC. Further, the RNC 111 controlling the Node B 113 becomes a CRNC of the Node B 113.
First, the AMC is a data transmission technique for adaptively determining a modulation technique and a coding technique of different data channels according to a channel condition between the Node B 123 and the UE 130 of FIG. 1, thereby to increase the overall utilization efficiency of the cell. Therefore, the AMC involves a plurality of modulation techniques and a plurality of coding techniques, and modulates and codes data channels by combining the modulation techniques and the coding techniques. Generally, each of combinations of the modulation techniques and the coding techniques is called “MCS (Modulation and Coding Scheme)”, and a plurality of MCS levels can be defined according to the number of combinations of the modulation techniques and the coding techniques. In other words, the AMC adaptively determines an MCS level according to a channel condition between the UE 130 and the Node B 123 currently wirelessly connected to the UE 130, thereby increasing the overall system efficiency.
Next, the FCS is a technique for rapidly selecting a cell having a good channel condition among a plurality of cells, when a UE supporting the HSDPA enters a cell-overlapping region, or a soft handover region. To be specific, if the UE 130 supporting the HSDPA enters a cell-overlapping region between the Node B 123 and a Node B 125, then the UE 130 establishes radio links to a plurality of the cells, i.e., a plurality of Node Bs. A set of the cells, to which the radio links are established by the UE, is called an “active set.” The FCS receives HSDPA packet data from only the cell maintaining the best channel condition among the cells included in the active set, thereby to reduce the overall interference. Herein, a cell transmitting the HSDPA packet data for its best channel condition among the cells in the active set is called a “best cell.” The UE periodically checks the channel conditions with the cells belonging to the active set. Upon detecting a cell having a channel condition better than that of the current best cell, the UE transmits a best cell indicator to all of the cells in the active set in order to exchange the best cell. The best cell indicator includes an identifier of the selected new best cell. Upon receiving the best cell indicator, the cells belonging to the active set analyze the cell identifier included in the received best cell indicator to determine whether the received best cell indicator is destined for them. The selected best cell transmits packet data to the corresponding UE using a high-speed downlink shared channel (HS-DSCH).
Finally, the n-channel SAW HARQ (n-channel Stop And Wait HARQ), will be described. In order to increase efficiency of the existing ARQ (Automatic Retransmission Request), the n-channel SAW HARQ has introduced two plans; one is soft combining and another is HARQ.
Soft Combining
The soft combing is a technique for temporarily storing defective data at a receiver and then combining the stored defective data with a retransmitted part of the corresponding data, thus to decrease an error rate. The soft combing technique is divided into a Chase Combining (CC) technique and an Incremental Redundancy (IR) technique.
In the CC, a transmitter uses the same format at initial transmission and retransmission. If m symbols were transmitted over one coded block at initial transmission, the same m symbols are transmitted even at retransmission. Here, the “coded block” represents user data transmitted for one TTI (Transmission Time Interval). That is, the same coding rate is applied to the initial transmission and the retransmission. A receiver then combines the initially transmitted coded block with the retransmitted coded block, and performs a CRC (Cyclic Redundancy Check) operation on the combined coded block to determine whether an error occurs.
In the IR, a transmitter uses different formats at initial transmission and retransmission. If n-bit user data was generated into m symbols through channel coding, the transmitter transmits a part of the m symbols at initial transmission, and sequentially transmits the remaining parts at retransmission. That is, a coding rate for initial transmission is different from a coding rate for retransmission. A receiver then assembles a coded block with a high coding rate by attaching the retransmitted parts to the tail of the initially transmitted coded block, and performs error correction on the assembled coded block. In the IR, the initial transmission and each retransmission are identified by a version number. The initial transmission has a version number 1, a first retransmission has a version number 2, and a second retransmission has a version number 3. The receiver can correctly combine the initially transmitted coded block with the retransmitted coded block using the version number.
HARQ
In the SAW HARQ, the Node B does not transmit the next packet data until ACK (Acknowledgement) for the previously transmitted packet data is received. Therefore, in some cases, the Node B must await ACK, though it can presently transmit packet data. The n-channel SAW HARQ increases utilization efficiency of a radio link by continuously transmitting a plurality of data packets before receiving the ACK for the previously transmitted packet data. That is, in the n-channel SAW HARQ, n logical channels are established between a UE and a Node B and identified by time or channel numbers, so that the UE, upon receipt of packet data at a certain time point, can determine the logical channel that transmitted the packet data. Thus the UE can rearrange packet data in the right reception order or soft-combine the packet data.
Now, an operation of the n-channel SAW HARQ will be described in detail with reference to FIG. 1. First; it will be assumed that the n-channel SAW HARQ, particularly 4-channel SAW HARQ is performed between the UE 130 and the Node B 123, and the 4 channels are assigned unique logical identifiers #1 to #4. Physical layers of the UE 130 and the Node B 123 have HARQ processors associated with the respective channels. The Node B 123 assigns a channel identifier #1 to an initially transmitted coded block before transmission to the UE 130. Here, the channel identifier can be assigned either specifically or implicitly. When the coded block assigned the channel identifier #1 has a transmission error, the UE 130 delivers the defective coded block to an HARQ processor #1 associated with the channel identifier #1, and transmits a NACK (Negative Acknowledgement) signal for a channel #1 to the Node B 123. The Node B 123 can transmit the next coded block over a channel #2 regardless of whether ACK for the coded block on the channel #1 is received or not. If the next coded block also has an error, the Node B 123 delivers the next coded block to the corresponding HARQ processor. Upon receiving NACK for the coded block on the channel #1 from the UE 130, the Node B 123 retransmits the corresponding coded block over the channel #1, and the UE 130 recognizes retransmission of the coded block previously transmitted over the channel #1 by analyzing the channel identifier of the retransmitted coded block, and delivers the retransmitted coded block to the HARQ processor #1. Upon receiving the retransmitted coded block, the HARQ processor #1 soft-combines the initially transmitted coded block stored therein with the retransmitted coded block. In this way, the n-channel SAW HARQ matches the channel identifiers with the HARQ processors on a one-to-one basis, thereby properly matching initial transmission with retransmission without a delay in transmitting user data until ACK is received.
Next, a structure of a transmitter for supporting the n-channel SAW HARQ will be described with reference to FIG. 2. FIG. 2 is a block diagram illustrating a structure of a general transmitter supporting the n-channel SAW HARQ.
Referring to FIG. 2, a transmitter for supporting the n-channel SAW HARQ includes a receiver 260, a transmission buffer 210, a CRC operator 220, a turbo encoder 230, a scheduler 270, a plurality of HARQ channel retransmission buffers (i.e., first HARQ channel retransmission buffer 240 to nth HARQ channel retransmission buffer 243), an HARQ channel controller 280, and a transmitter 250.
The receiver 260 receives control information transmitted by a UE through Uu interface, i.e., a radio link, performs such channel reception processing as de-channelization on the received control information, and provides HARQ-related feedback information included in the de-channelized information to the transmission buffer 210 and the HARQ channel controller 280. Here, the control information transmitted from the UE may include channel quality information (CQI) and ACK/NACK information, and the receiver 260 provides the ACK/NACK information included in the control information to the transmission buffer 210 and the HARQ channel controller 280. In addition, the scheduler 270 schedules an initial transmission point and a retransmission point of the user data.
The transmission buffer 210 buffers user data transmitted from an upper layer, receives the feedback information output from the receiver 260 and information on the user data transmission point output from the scheduler 270, and provides the buffered user data to the CRC operator 220. If the feedback information is ACK, the transmission buffer 210 outputs buffered new user data, i.e., initially transmitted user data. If the feedback information is NACK, the transmission buffer 210 does not output the buffered new data.
The CRC operator 220 performs a CRC operation on the user data output from the transmission buffer 210, inserts the CRC operation result in the user data (CRC insertion), and provides the CRC-inserted user data to the turbo encoder 230. Although the CRC operator 220 is interposed between the transmission buffer 210 and the turbo encoder 230 in FIG. 2, the CRC operator 220 may be connected to a previous stage of the transmission buffer 210. The turbo encoder 230 encodes the CRC-inserted user data output from the CRC operator 220 according to a preset encoding technique, and provides the coded user data to the HARQ channel controller 280 and the HARQ channel retransmission buffers (i.e., first HARQ channel retransmission buffer 240 to n HARQ channel retransmission buffer 243. Here, a signal output from the turbo encoder 230 is a coded block, and the turbo encoder 230 provides the coded block to an HARQ channel retransmission buffer associated with a channel over which the coded block is to be transmitted. For example, if the coded block encoded by the turbo encoder 230 is a coded block targeting a first channel, the turbo encoder 230 provides the coded block to the first HARQ channel retransmission buffer 240. The HARQ channel controller 280 inserts a channel number in the coded block by receiving feedback information output from the receiver 260, or provides the received coded blocks to the transmitter 250 at associated transmission points, using the transmission points of the respective channels. The transmitter 250 performs such channel transmission processing as modulation and OVSF (Orthogonal Variable Spreading Factor) encoding on the coded blocks output from the HARQ channel controller 280, and transmits the processed coded blocks to a corresponding UE through Uu interface, i.e., a radio link, at transmission points of the corresponding channels. If the coded blocks are transmitted through a plurality of OVSF codes, the transmitter 250 further performs demultiplexing to distribute the coded blocks according to the OVSF codes.
Next, with reference to FIG. 3, a structure of a receiver supporting the n-channel SAW HARQ will be described. FIG. 3 illustrates a structure of a general receiver supporting the n-channel SAW HARQ. Referring to FIG. 3, a receiver supporting the n-channel SAW HARQ includes a receiver 350, a transmitter 360, a turbo decoder 330, a plurality of HARQ channel buffers (i.e., first HARQ channel buffer 340 to nth HARQ channel buffer 343), a CRC operator 320, and a reception buffer 310.
The receiver 350 receives a signal through Uu interface, i.e., a radio link, generates a coded block by performing such received signal processing as demodulation and de-channelization on the received signal, and provides the generated coded block to the turbo decoder 330 and an HARQ channel buffer associated with a channel over which the corresponding coded block is received. For example, if the coded block is received over a first channel, the receiver 350 provides the corresponding coded block to the first HARQ channel buffer 340. The turbo decoder 330 decodes the coded block output from the receiver 350, and provides the decoded coded block to the CRC operator 320. The CRC operator 320 performs a CRC operation on a signal received from the turbo decoder 330, and provides a CRC operation result signal, i.e., ACK or NACK, to a corresponding HARQ channel buffer and the transmitter 360. If the signal output from the turbo decoder 330 has no CRC error, the CRC operator 320 provides ACK to the transmitter 360 and the corresponding HARQ channel buffer. Upon receiving the ACK from the CRC operator 320, the transmitter 360 transmits the ACK to a UE over a corresponding channel on a radio link. In addition, the transmitter 360 discards the coded block stored in the corresponding HARQ channel buffer that received the ACK from the CRC operator 320. Further, the CRC operator 320 provides error-free user data to the reception buffer 310. In contrast, if the signal output from the turbo decoder 330 has a CRC error, the CRC operator 320 provides NACK to the transmitter 360, but does not provide the NACK to the corresponding HARQ channel buffer. That is, a coded block on a channel corresponding to the NACK is continuously stored in the corresponding HARQ channel buffer. Further, the CRC operator 320 discards the defective user data. The reception buffer 310 buffers (temporarily stores) the user data output from the CRC operator 320 and transmits the buffered user data to an upper layer at a proper time point. Here, the reception buffer 310 transmits the buffered user data to the upper layer either sequentially or in the order of reception.
Thereafter, upon receiving a coded block through a radio link, the receiver 350 identifies a channel over which the coded block is received, and determines whether a coded block has been stored in an HARQ channel buffer associated with the identified channel. If no coded block has been stored in the corresponding HARQ channel buffer, the receiver 350 provides the received coded block to both the turbo decoder 330 and the HARQ channel buffer associated with the corresponding channel. However, if a coded block has already been stored in the HARQ channel buffer associated with the channel of the received coded block, the receiver 350 provides the received coded block only to the corresponding HARQ channel buffer and does not provide the received coded block to the turbo decoder 330. The corresponding HARQ channel buffer soft-combines the received coded block provided from the receiver 350 with the previously received coded block that was buffered due to an error, and provides the soft-combined coded block to the turbo decoder 330. The turbo decoder 330 decodes the coded block received from the corresponding HARQ channel buffer, and provides the decoded coded block to the CRC operator 320. The CRC operator 320 performs a CRC operation on the signal output from the turbo decoder 330. If no CRC operation error occurs, the soft-combined coded block is buffered in the reception buffer 310 and transmitted to the upper layer at a proper time point.
As described above, in the n-channel SAW HARQ, a channel plays a role of informing the receiver of an HARQ channel buffer, a coded block stored in which should be soft-combined with the received coded block. That is, in FIG. 3, the receiver 350 analyzes a channel identifier of the received coded block to determine whether a coded block has already been buffered in an HARQ channel buffer associated with a channel of the received coded block. If a coded block has already been buffered in the corresponding HARQ channel buffer, the receiver 350 soft combines the received coded block with the buffered coded block.
As described in conjunction with FIG. 2, the transmitter can transmit a channel identifier to the receiver along with a coded block. This is called asynchronous n-channel SAW HARQ. Alternatively, the transmitter transmits a coded block by matching a specific channel to a specific time point, and the receiver can determine a channel number using a reception point of the coded block. This is called synchronous n-channel SAW HARQ. In the following description, only the asynchronous n-channel SAW HARQ will be taken into consideration. Therefore, in the following description, “n-channel SAW HARQ” refers to the asynchronous n-channel SAW HARQ.
When using the CC, the transmitter should inform the receiver of information indicating whether the coded block was initially transmitted or retransmitted, as well as a channel number of the transmitted coded block. The information indicating whether the corresponding coded block is an initially transmitted coded block or a retransmitted coded block is comprised of one bit and transmitted along with the coded block. If this information is “0,” it indicates that the corresponding coded block is an initially transmitted coded block. If the information is “1”, it means that the corresponding coded block is a retransmitted coded block. The information indicating whether the corresponding coded block is an initially transmitted coded block or a retransmitted coded block will be referred to as a “New/Continue (N/C) flag.”
When using the IR, the transmitter can inform the receiver of version information of the coded block as well as a channel number of the transmitted coded block. Here, the version information has a size, which depends upon the number of versions permitted by the system.
In the following description, only the case where the CC is used will be taken into consideration.
In the n-channel SAW HARQ using the CC, the reason that the transmitter transmits an N/C flag as well as a channel number along with a coded block is to prevent a possible random communication error occurring between the transmitter and the receiver.
Next, a communication error occurring in an HSDPA communication system will be described with reference to FIGS. 4A to 4C.
FIG. 4A illustrates a communication error occurring when a Node B supporting the HARQ mistakes ACK from a UE for NACK in an HSDPA communication system. FIG. 4B illustrates a communication error occurring when a Node B supporting the HARQ mistakes NACK from a UE for ACK in an HSDPA communication system. FIG. 4C illustrates a communication error occurring when a Node B supporting the HARQ fails to receive a coded block in an HSDPA communication system.
Referring to FIG. 4A, a transmitter transmits an initially transmitted coded block #1 with an N/C flag set to New, over a channel #1 at a time point 401. A receiver then receives the coded block #1 with an N/C flag set to New at a time point 402 over the channel #1 transmitted by the transmitter at the point 401, and performs turbo decoding and CRC operation on the coded block #1 to determine whether an error has occurred in the coded block #1. As a result of the CRC operation on the coded block #1, if no error has occurred in the coded block #1, the receiver transmits ACK to the transmitter at a point 403.
However, if an error occurs in the ACK due to a bad radio channel environment on a radio link, the transmitter may mistake the ACK transmitted by the receiver for NACK at a point 404. Then the transmitter decides that the coded block #1 is transmission-failed, and retransmits the coded block #1 with the N/C flag set to Continue indicating retransmission of the coded block over the channel #1 at a point 405. The receiver then receives the coded block #1 with the N/C flag set to Continue over the channel #1 at a point 406. However, since the receiver has already successfully received the coded block #1 at the point 402, the receiver expects that the coded block received at the point 406 is the initially transmitted coded block with the N/C flag set to New. However, since an N/C flag of the coded block received at the point 406 is set to Continue, the receiver can recognize that a communication error has occurred.
Here, if the transmitter does not use the N/C flag, the receiver cannot recognize the fact that a communication error has occurred. Therefore, the receiver mistakes the coded block received at the point 406 for the initially transmitted coded block.
Referring to FIG. 4B, a transmitter transmits a coded block #1 with an N/C flag set to New over a channel #1 at a point 407. A receiver then receives the coded block #1 over the channel #1 at a point 408, and performs turbo decoding and CRC operation on the coded block #1 at a point 409, to determine whether an error has occurred in the coded block #1. As a result, if an error has occurred in the coded block #1, the receiver transmits NACK to the transmitter at the point 409. However, if an error occurs in the NACK due to a bad radio channel environment on a radio link, the transmitter may mistake the NACK transmitted by the receiver for ACK at the point 410. Upon receiving the ACK, the transmitter transmits a new coded block with an N/C flag set to New to the receiver over the channel #1 at a point 411. The receiver expects to receive a coded block #1 over the channel #1 at a point 412, after transmitting the NACK at the point 409. However, since an N/C flag of the coded block received from the transmitter at the point 412 is set New, the receiver can recognize that a communication error has occurred.
Likewise, if the transmitter does not use the N/C flag, the receiver cannot recognize the fact that a communication error has occurred. Therefore, the receiver mistakes the coded block received at the point 412 for the retransmitted coded block, and soft-combines the coded block received at the point 408 with the coded block received at the point 412. As a result, the soft-combining is performed between different coded blocks, causing another error.
Referring to FIG. 4C, occurrence of an error can be checked by analyzing continuity of channel numbers instead of the N/C flag. Specifically, a transmitter transmits coded blocks with sequential channel identifiers over four channels at a point 413, a point 415, a point 417 and a point 418. That is, the transmitter transmits a coded block with an N/C flag set to New over a channel #1 at the point 413. Similarly, the transmitter transmits coded blocks with an N/C flag set to New over a channel #2, a channel #3 and a channel #4 at the point 415, the point 417 and the point 418, respectively. A receiver then receives the coded blocks from the corresponding channels at a point 414, a point 416 and a point 419, and analyzes channel identifiers. However, since the coded block for the channel identifier #3 among the sequential channel identifiers is not received, the receiver can recognize that a communication error has occurred. In the description of FIGS. 4A to 4C, the transmitter is a Node B and the receiver is a UE.
For the communication errors described in conjunction with FIGS. 4A to 4C, the following error overcoming operations are generally performed.
First, if the communication error of FIG. 4A has occurred, i.e., if the transmitter determines that the receiver transmitted NACK although the receiver transmitted ACK, then the receiver discards the coded block received at the point 406 since the coded block received at the point 406 is identical to the coded block received at the point 402.
Second, if the communication error of FIG. 4B has occurred, i.e., if the transmitter determines that the receiver transmitted ACK although the receiver transmitted NACK, then the receiver stores the coded blocks received at the points 408 and 412 in the reception buffer 310 and transmits the stored coded block to the upper layer later on, since the coded block received at the point 412 is not identical to the coded block received at the point 408. As a result, a coded block buffered in the first HARQ channel buffer 340 associated with the channel #1, i.e., the coded block received at the point 408 will never be retransmitted, so the coded block can be discarded from the first HARQ channel buffer 340.
Alternatively, if searching an error overcoming process suitable to every circumstance inevitably increases system complexity, the receiver can be reset as soon as a communication error occurs.
As described above, when the n-channel SAW HARQ uses an N/C flag, the receiver can recognize occurrence of a communication error. However, when the N/C flag is used, physical bit resources for transmitting the N/C flag are required resulting in a reduction in system resources. In particular, if the asynchronous n-channel SAW HARQ is taken into consideration, the physical bit resources of (log 2(n)+1) bits should be additionally allocated for the channel numbers and the N/C flags, causing a further reduction in efficiency of the resources.